Portable wireless communication systems

ABSTRACT

The invention provides a system for wireless transmission of data, including position data. The system includes a hand held digital computer, a position-locating device providing position information to the digital computer and a VHF and/or UHF radio frequency transmitter. A radio modem, having an input for digital data from the hand held digital computer and an output connected to the transmitter, includes a modulator for converting digital data from the computer into a modulated analogue RF signal for transmission.

FIELD OF THE INVENTION

[0001] The present invention relates to portable wireless communication systems, in particular for sending and receiving data, including for instance position information, at radio frequencies.

BACKGROUND

[0002] Wireless communication is widely used today in many environments to transmit data of various types conveniently and quickly from and to remote locations. The rapidly growing use of wireless cellular phones for sending and receiving both voice and other data content is one example, but there remain many situations in which this form of communication is unreliable or impossible because it relies on the geographical coverage of the cellular system. Radio frequency transmissions, in particular at VHF and UHF frequencies therefore still offer a useful alternative to cellular systems for the transmission of data.

[0003] One known approach to radio frequency transmission of data packets adopts the APRS (Automatic Position Reporting System) protocol. This protocol is well known in the art and is most often used to broadcast position information, obtained using a GPS (Global Positioning System) device for instance, or other short messages. Whilst this approach has the advantage that it does not rely on a cellular system, it does not have the same capabilities as the more advanced cellular based systems such as the Wireless Access Protocol (WAP) systems, which provide a more secure, reliable and flexible form of data transmission.

SUMMARY OF THE INVENTION

[0004] It is a general object of the present invention to provide a wireless communications system that can offer security, reliability and flexibility comparable with known cellular based systems without being limited by the geographical boundaries of these cellular systems.

[0005] Accordingly, in a first aspect the present invention provides a system for wireless transmission of data, including position data, the system comprising:

[0006] (i) a hand held digital computer;

[0007] (ii) a position-locating device providing position information to the digital computer;

[0008] (iii) a VHF and/or UHF radio frequency transmitter; and

[0009] (iv) a radio modem having an input for digital data from the hand held digital computer, a modulator for converting digital data from the computer into a modulated analogue RF signal, and an output connected to the transmitter for transmission of said modulated signal.

[0010] In preferred forms, the system is also able to receive data, the system having a radio receiver connected to the radio modem and the modem including a demodulator for demodulating a received RF signal and converting it to digital data for input to the digital computer. Conveniently, a radio transceiver can serve as both the radio receiver and transmitter.

[0011] Likewise, the modulator and demodulator can be provided as a single component in a known manner. Any of a number of appropriate forms of modulation may be employed, including for example FSK or MSK modulation. MSK (‘Minimum Shift Keying’) modulation is particularly preferred due to its inherently low BER (bit error ratio) and lower susceptibility to noise.

[0012] The hand held digital computer is most preferably of the size commonly referred to as ‘palmtop’, that can be comfortably held in one hand. This type of computer is often referred to as Personal Digital Assistants (PDA) and examples include the ‘PALM III’ and ‘PALM V’ from Palm Computing Inc., which operate the PalmOS platform, and Windows based systems such as Compaq's IPAQ Pocket PCs.

[0013] The position-locating device is preferably a GPS (‘Global Positioning System’) device, although other devices able to give an output representative of a position of the system relative to some frame of reference may be used. Conveniently, the GPS device (or other position location device) may be connected to the digital computer through the radio modem, in order that only a single physical connection to the computer need be made. This approach can be particularly advantageous where, as is often the case with PDAs, the digital computer only has a single output port via which it is able to communicate with external devices.

[0014] Many PDAs have what is known as a ‘sleep mode’, in which the PDA is essentially inactive, but can be woken up (i.e. brought to a fully ‘on’ state) by one or more different types of input either via its user interface or via a communication port. The radio modem of preferred embodiments of the present invention therefore preferably includes wake-up means for waking the computer from a ‘sleep mode’ on receipt of an RF signal by the radio receiver. These wake-up means can, for instance, transmit a wake-up signal to a communication port of the PDA to wake it up prior to sending newly received data. It would be possible, for example, to implement this wake-up procedure using the PalmOS Hot Sync feature.

[0015] PDAs or the like having such a ‘sleep mode’, will typically be controlled (e.g. by their software) to switch into the sleep mode automatically after a predetermined period of inactivity. Whilst such operation may be appropriate for embodiments of the present invention, it is advantageous for the PDA to also have an ‘always on mode’, in which the sleep function is disabled.

[0016] The communication system may also include provision for a second digital computer which can be interfaced to the hand held digital computer through the radio modem to receive data from and transmit data to the hand held computer. This second computer can be, for example, a Laptop PC or a Desktop PC or a Network Workstation and is preferably itself connected to a computer or telecommunications network, e.g. the internet. Where the radio modem includes a port, e.g. an RS232 port, for an external GPS system (or other position-location device), this port may conveniently also be used for communication with the second computer.

[0017] It is envisaged that a system set up with a second computer in this manner could serve as a base station, the second computer receiving and sending data, for example position data, through the wireless communication system from and to other stations, which may be mobile. If the second computer is connected to the internet, this approach also enable the mobile stations to themselves access the internet via the base station.

[0018] According to a second aspect, the invention provides a modem to provide an interface between a hand held digital computer, a radio frequency transmitter and/or receiver and a position locating device, the modem comprising:

[0019] (i) an input/output port for connection to a communication port of the digital computer;

[0020] (ii) a modulator and/or demodulator for converting digital data to a modulated radio frequency signal and/or for converting a modulated radio frequency signal to digital data;

[0021] (iii) an input for data from the position-locating device;

[0022] (iv) a switch for selectively connecting (a) the modulator and/or demodulator to said input/output port, or (b) the position locating device input to said input/output port; and

[0023] (v) a controller for controlling the operation of the switch.

[0024] In a preferred form of the modem according to the second aspect of the invention, the position locating device, which may for example be a GPS device, is housed within the same casing as the modem itself. Using an ‘internal’ position location device in this way means it is only necessary for the user to provide a radio transmitter/receiver and the digital computer to construct a complete system.

[0025] Where the modem is intended for use in a system employing a PDA, or other hand held computer, having a ‘sleep mode’ as discussed above, the demodulator may have a ‘carrier detect’ feature responsive to an RF carrier signal received by the radio receiver. A wake-up signal for the PDA can then be initiated by this ‘carrier detect’ feature when an RF carrier signal is received. Alternatively, the controller may have a ‘packet recognition’ feature responsive to demodulated data arriving at the switch from the demodulator and the wake-up signal can be initiated by this ‘packet recognition’ feature on arrival of demodulated data.

[0026] The present invention also provides a number of protocols in accordance with which preferred embodiments of the communication system set forth above operate. These protocols may be implemented in software installed on the digital computer (e.g. PDA) for example.

[0027] Accordingly, in a further aspect the invention provides a method for the wireless transmission of a message from a sending station to a receiving station, the method comprising:

[0028] (i) at the sending station, dividing the message into a number of discrete data packets;

[0029] (ii) sending a data packet by radio transmission from the sending station to the receiving station;

[0030] (iii) waiting for acknowledgement from the receiving station that the packet has been received;

[0031] (iv) once receipt of the packet has been acknowledged, sending a subsequent packet to the receiving station; and

[0032] (v) repeating steps (iii) and (iv) until all of the data packets have been sent.

[0033] Each data packet may include, in addition to the message data, a header, comprising data giving information about one or more of, and preferably all of: an address of the receiving station; an address of the sending station; the length of the message data; and the number of data packets into which the message has been divided. Where more than one form of message is to be sent (e.g. text message, GPS data, etc), the header may also include information as to the type of packet. It may also be useful for the header to include provision for indicating whether the message is high or low priority, whether it is a new message or a response to an earlier message or other such type data for the packet.

[0034] Each packet also preferably includes check data, which can be used to test the integrity of the packet when it is received at the receiving station. For more secure communication, the transmitted data may be encrypted.

[0035] Preferably, the complete message is encrypted prior to its division into discrete data packets.

[0036] The size of the message data part of each packet need not be fixed, but rather can be set by the sending station—the length of this segment of the packet is then given by the packet header so that the receiving station can adopt the same message data segment length when reconstructing the message.

[0037] Usually the size of the message data segment of the packet will be between 255 and 32,128 bytes.

[0038] If an acknowledgement of safe receipt of any packet is not returned by the receiving station, the sending station may simply alert the user of the sending station by displaying an error message for example. More preferably, however, the packet is re-transmitted automatically. A maximum limit on the number of attempts at re-transmission is preferably placed on the system, however, to prevent it entering an endless loop. Non-acknowledgement can be determined to have occurred either after no reply from the receiving station has been received following a predetermined waiting time, or when a reply is received but that reply is a request for retransmission or is itself unreadable (e.g. due to excessive noise).

[0039] In another aspect, there is provided a method for receiving at a receiving station a message transmitted as a series of radio data packets from a sending station, each packet comprising a message data segment and a header, the header containing information including the address of the intended recipient of the message and the length of the message data segment, the method comprising:

[0040] (i) detecting receipt at the receiving station by a radio receiver of the first packet of a new message;

[0041] (ii) determining from the packet header whether the receiving station is the intended recipient of the message, and if it is;

[0042] (iii) determining from the packet header the length of the message data segment of the packet;

[0043] (iv) extracting and storing the message data from the packet; and

[0044] (v) transmitting an acknowledgement of receipt of the package to the sending station.

[0045] Preferably the packet header also includes an indication of how many subsequent packets of the complete message there are yet to be received. In this way, the receiving station can easily determine when all packets have been received, after which it can reconstruct the complete message and, if applicable, decrypt it.

[0046] Each packet preferably also includes check data which can be used by the receiver to test the integrity of the packet. When any data packet is not correctly received, the receiving station preferably transmits a ‘not acknowledged’ message to the sending station.

[0047] The above methods of transmission and reception of messages provide a reliable and secure form of communication across a radio link between specific end points. However, there may be occasions where it is desirable to indiscriminately broadcast a message for reception by any receiver in range. In this case, it is impractical to seek acknowledgement from the receiving stations.

[0048] Accordingly in yet a further aspect, the invention provides a method for the wireless broadcast of a message from a sending station, the method comprising:

[0049] (i) at the sending station, dividing the message into a number of discrete data packets;

[0050] (ii) labelling each packet as a broadcast packet;

[0051] (iii) transmitting a first data packet by radio transmission from the sending station;

[0052] (iv) transmitting at least one copy of the first data packet after a predetermined delay following transmission of the first data packet; and

[0053] (v) transmitting subsequent data packets, the transmission of each subsequent data packet being followed by the transmission of a copy of the packet prior to transmission of the next subsequent data packet.

[0054] By sending each packet at least twice in succession, incorrect delivery of the message to a stations can be more readily avoided, even though no positive acknowledgement of receipt is requested.

[0055] When a receiving station receives packets of a message labelled as a broadcast message it knows firstly that it can consider itself an intended recipient and secondly that it should not send any acknowledgement. The receiving station will also check for repeat packets and discard any copies of packet that have already been successfully received. Otherwise, the receiving station can operate as it would do when receiving a message explicitly addressed to it.

[0056] Communications systems according to embodiments of the present invention are preferably operable, for instance under the control of appropriate software installed in the digital computer element of the system, to operate in accordance with one or more, preferably all of the above described methods.

[0057] In addition to the normal receiving and sending of messages and the receiving and sending of broadcast messages, communication systems according to embodiments of the present invention preferably also have the capability to automatically transmit, at predetermined intervals of time, a position report containing information about their location, obtained from the positioning device. In this way, other stations or, for example, a base station can readily track the movements of mobile sending stations for example.

[0058] It may also be desirable to provide the capability for a sending station to specifically request the position of another station, as an alternative to, or in addition to the automatic updating described immediately above. More specifically one station may poll another station for its position, the polled station then returning a position report in response.

[0059] Even adopting radio communication as an alternative to a cellular approach, there may be occasions where the intended recipient receiving station is beyond the range of the sending station. On such occasions it is desirable to provide one or more repeater stations to relay the message from the sending station to the receiving station. Preferably, the communication system of the present invention has the capability to act as a repeater station. It is particularly preferred that the system can automatically recognise when its services as a repeater station are required and act accordingly. For instance, the system can have a software defined repeater mode, which when activated causes the system to monitor communications between a sending station and a receiving station and to act as a repeater station when there is a communication failure between the stations.

BRIEF DESCRIPTION OF THE DRAWINGS

[0060] An embodiment of a wireless communication system according to the first aspect of the invention, employing an embodiment of a modem according to the second aspect of the invention is described below, by way of example, with reference to the accompanying drawings, in which:

[0061]FIG. 1 illustrates schematically the components of the wireless communication system;

[0062]FIG. 2 is a block diagram illustrating the main components of the modem used in the system of FIG. 1;

[0063]FIG. 3 illustrates an embodiment of a message transmission protocol;

[0064]FIG. 4 illustrates an embodiment of a message reception protocol;

[0065]FIG. 5. illustrates an embodiment of a message broadcast protocol;

[0066]FIG. 6 illustrates an embodiment of a position reporting protocol; and

[0067]FIG. 7 illustrates an embodiment of a smart repeater protocol.

DESCRIPTION OF EMBODIMENTS

[0068] The wireless communication system described below provides an integrated secure encrypted messaging and position

tracking service based on a Palm-size PDA and a VHF/UHF radio. As such it can provide reliable communications even in rural and unpopulated areas that are not covered by cellular phone systems.

[0069] With reference to FIG. 1, the principle components of the system are a Palm PDA computer 2, a VHF/UHF Radio 4, a GPS (Global Positioning System) receiver 6 and a Radio Modem/Controller 8. The Radio 4 and GPS device 6 are interfaced to the PDA 2 through the Modem/Controller 8, which incorporates a TNC (Terminal Node Controller) and a GPS adapter in addition to a radio modem employing MSK modulation. The PDA's 2 programming power can be used not only for text editing and message storage, but also to encrypt all messages and position reports (see below) before transmission. The PDA also provides a user interface, including for example ‘in-box’ and ‘out-box’ elements.

[0070] The PDA can be a standard, ‘off the shelf’ device. A PalmV PDA has been preferred in practice, since it has an accessible and simple user interface, is readily available and has a standard serial port which can be used for connection to the Modem/Controller 8. Advantageously, it also has a rechargeable battery. However, other PDAs may be used in its place. Custom software (described further below), in this case written for the PalmOS platform is, however, installed on the PDA.

[0071] Similarly, the VHF/UHF radio 6 can be any of a number of readily available models, and the GPS receiver can also be an ‘off the shelf’ model and may either be a stand-alone device or, alternatively, may be incorporated as an internal device within the modem/controller 8.

[0072] The modem/controller 8 in this example is specially designed for use with the PalmOS platform PDA and has the following principle functions:

[0073] The provision of an output, via the radio modem using MSK modulation, to a VHF/UHF transceiver for transmitting and receiving digital data;

[0074] Connection of the serial port of the PDA to either the radio modem or the GPS receiver;

[0075] Charging the internal battery of PDA via a small charger housed within the modem/controller simultaneously with the transmission of data; and

[0076] Turning on the PDA automatically upon reception of new incoming data, e.g. using the Hot-sync feature of the PalmV.

[0077] The basic structure of the modem/controller 8 is illustrated in FIG. 2. The principle components are:

[0078] A radio modulator/demodulator 10 offering MSK RF modulation/demodulation used to convert digital data received from the PDA to analogue signals, to be sent by the RF transmitter and vice-versa. MSK modulation/demodulation is used instead of the more conventional FSK modems, because of its lower BER and because it is less sensitive to S/N ratios;

[0079] An internal GPS receiver 12 for position reporting, which is a GPS device with standard NMEA output of type GGA or RTC. The GPS is powered by the modem/controller's power supply and its output at TTL level is directly fed to the multiplexer 18 of the controller 16 (see below). (Alternatively, an external GPS may be used, in which case its output is first converted to TTL level by passing through an RS-232 level converter.);

[0080] An internal Li-ION battery charger 14 for charging the battery of the PDA. The charger has current-controlled output and can be turned on or off by an external switch at the user's discretion;

[0081] A serial port controller 16, which serves to control the selective connection of the RF modulator/demodulator 10 and GPS receiver 12 to the serial port of PDA. This controller 16 comprises an 8 to 1 CMOS multiplexer 18, which is controlled by an 8-bit CMOS EEPROM PIC micro-controller chip 20. The micro-controller 20 is controlled by ASCII commands sent by PDA (under the control of the custom software described below) via its serial port. In addition to controlling the multiplexer as a serial port switch, the micro-controller can also control the transceiver's transmit switching (PTT—“Push to Talk”), to instruct an RF transceiver connected to the radio modem to go to transmit mode, preferably in response to a “Request to Send” (RTS) from the PDA; and

[0082] An RS-232 Driver/Receiver Level Translator 22, which serves to convert signal level from RS-232 (from the PDA side) to TTL level used in controller circuit.

[0083] The commands that the micro-controller 20 is set up to receive from the PDA, include:

[0084]

P=0 to

P=7

: Commands used to switch ports connected to PDA's serial port, including modem, GPS output, external modem, and a loop back (for test);

[0085]

T=0

: Receive mode; and

[0086]

T=1

: Transmit mode.

[0087] In the illustrated example, the modem/controller 8 also includes an external modem 24, which can be used for an input from an external GPS device, TNC or satellite modem. The micro-controller 20 can control the multiplexer 18 to connect this external modem 24 to the serial port of the PDA. This same serial output port can be used for a connection to another computer, enabling position reports and other messages to be made available to that computer, e.g. a PC, in addition to the PDA. This may be useful, for instance, for display of location information on a map and/or for integration with other applications if desired. The PC may, if desired, be connected to the internet, or other computer or telecommunications network.

[0088] The modem/controller 8 also includes, in this example, an indicator, for example an LED 26, to show when a data signal is received by the radio modem. Preferably this indicator is directly controlled by the demodulator 10. The modem/controller 8 also includes means 28, again preferably under the control of the demodulator, to send a signal (e.g. in the case of the PalmV a 2.2V voltage) to the serial port of the PDA to turn the PDA on and start the communications software to receive the incoming data.

[0089] Turning now to the software component of the communication system, installed on the PDA, a first program component, in this example written in PIC-assembly code, enables the PDA to communicate with and control the PIC micro-controller over a serial line connected to the PDA's serial port, in particular to control the switching of the multiplexer via the micro-controller to connect the serial port of the PDA to either the radio modem or the GPS.

[0090] A second program component installed on the PDA, developed in this example for the PalmOS platform, handles message editing and archiving, automatic message encryption and decryption, control of modem data packet transmission protocols (see below) and full control of the micro-controller. Using a software-based transmission protocols instead of a hardware-based protocols allows upgrades to be implemented faster and more easily and also minimises costs.

[0091] The software-implemented protocols have been designed with the aim of providing fast and reliable radio communications over VHF/UHF radio links. Accordingly, the communications protocols have a packet-based structure with error checking capabilities, but the header and error checking segments of each packet are kept to a minimum (only 9 bytes for the header and 2 for error checking in the preferred packet structure described below). This relatively very small message overhead results in higher efficiency and speed for the system. Provision is also provided for automatic encryption and decryption for secure communication.

[0092] In the preferred packet structure, each packet is made of three segments: header, body (message data) and error-checking segments.

[0093] The header segment is of fixed length (9 bytes), an contains the following information:

[0094] Bytes 1

3: a header signature;

[0095] Byte 4: ID of the intended recipient receiving station;

[0096] Byte 5: ID of the sending station;

[0097] Byte 6: Length of the message data segment of the packet in bytes;

[0098] Byte 7: Packet Sequence Number (In descending order)—from which the receiving station can determine how many packets there are in any one message;

[0099] Byte 8: Type of packet:

[0100] Bit 0-3: type of message data: Message, GPS tracking data or GPS request for example;

[0101] Bit 4: 1=first packet of a message, 0=subsequent packets of the message;

[0102] Bit 5: 1=high priority, 0=normal priority;

[0103] Bit 6: reserved

[0104] Bit 7: 1=message response, 0=new message;

[0105] Byte 9: CRC (“cyclic redundancy code”) for the header to enable the integrity of the header segment to be checked.

[0106] The length of the body segment (i.e. message data) can be variable and is usually 255 or 32,128 bytes. This size is exclusively set by sending station and automatically adopted by the receiving station.

[0107] The error-checking segment, at the end of each packet, consists of 2 bytes of CRC, which the receiving station can use to check correct reception of the received packet.

[0108] The communication Protocol for transmission of a message from a sending station to a receiving station is illustrated in FIG. 3 and is as follows:

[0109] 1. The whole message (consisting, for example, of location co-ordinates, subject and the body) is bound together, encrypted and an entry for the message is placed in an ‘outbox’ list. (101)

[0110] 2. The encrypted message is divided into a series of discrete, small packets of size 255 or 32,128 bytes (102). This size is independently adjustable by the sending station and needs no adjustment at the receiving end. The 9 byte header and 2 byte error checking segments are added to each packet at this step.

[0111] 3. Each packet(consisting of the header, body and CRC error-checking segments) is then separately sent and the sending station waits for a confirmation reply from the receiving station after each packet is sent (103).

[0112] 4. If receiving station responds with an ‘OK’ acknowledgement message, the sending station sends the next packet if there are more packets to send (104).

[0113] 5. If one of the following conditions is encountered, the sending station retransmits the last packet sent (105):

[0114] the sending station does not receive any reply from the receiving station for a predetermined time interval, e.g. 6 seconds (106),

[0115] the reply from receiving station is received but is not readable, e.g. due to low S/N ratio (107),

[0116] a reply from receiving station is received but is a request for retransmission of the last package (e.g. a ‘not acknowledged’ message) (107).

[0117] 6. If the receiving station does not re-send with an ‘OK’ acknowledgement the second or subsequent time the packet is sent, it is retransmitted again, up to a maximum number of retransmissions (e.g. three).

[0118] 7. If after the maximum number of attempted transmission of the packet (e.g. four attempts—the original attempt, plus three re-tries) no ‘OK’ acknowledgement is received by the sending station from the receiving station, message transmission is discontinued and an error message is displayed (e.g. on the screen of the PDA) to inform the user (108).

[0119] 8. If a message is received at the sending station from the receiving station indicating that all packets of the message have been received successfully, the sending station (e.g. the PDA component of the system) displays an acknowledgement of the reception of all packets by the other end on it's screen and the entry for the message in the outbox list is checked (109).

[0120] The communication Protocol for reception at a receiving station of a message sent by a sending station is illustrated in FIG. 4 and is as follows:

[0121] 1. The receiving station is continuously checking the serial port input for receiving a new message signature (three special characters in sequence—bytes 1-3 of the packet header) in any RF signal received (201).

[0122] 2. After receiving the signature for a new packet, the receiving station authenticates the header (202) and then checks the message type and receiving station ID given in the packet header and acts as follows:

[0123] if the message is a request for sending a position report (see below), the receiving station automatically connects to the GPS receiver, retrieves the required position information, (if necessary) converts this information from Lat/Long format to UTM format, formats the information into a predefined position report format, encrypts the report and then transmits the encrypted position report (see FIG. 6);

[0124] if the message is a position report from another station, the report is received, decrypted, and is displayed in a dialog on the screen and also saved as a message in an inbox category of the custom application running on the PDA;

[0125] if the message is for the station itself, a reception process (3. below) begins (202);

[0126] if the message is not for the receiving station (i.e. the receiving station ID in the header segment of the packet does not match the ID of the receiving station), the receiving station reacts in one of three ways:

[0127] if the receiving station is in Monitor Model (see below), the message is received as a monitored message, the message being received in accordance with the reception process (3. below) but being flagged as a monitored message to distinguish it from messages addressed specifically to the receiving station;

[0128] if the receiving station is set to be a repeater for sending station from which the packet originates, a repeater protocol (see below) is automatically activated;

[0129] otherwise the message is ignored (204).

[0130] 3. In the reception process, the receiving station first receives the header part of the packet and from that, calculates the size of the packet body (byte number 6 in header) and also the number of packets in the message (byte number 7 in header).

[0131] 4. The body is received (number of bytes to receive is determined by byte number 6 in header).

[0132] 5. The CRC error-checking segment (final 2 bytes of the packet) for the body is received.

[0133] 6. CRC for received body is calculated by the receiving station and is compared to CRC extracted from the packet received from the sending station to validate the received data (205).

[0134] 7. If the received data is not validated, a short ‘Not acknowledged’ message is sent to the sending station (206), which results in re-transmitting the last packet by the sending station (as described above).

[0135] 8. If data is validated, a short ‘Acknowledged’ message is sent (207). (‘Not acknowledged’ and ‘Acknowledged’ messages are preferably formatted as a 9-byte header, with the 8th byte set to indicate ‘Not Acknowledged’ or ‘Acknowledged’).

[0136] 9. If the link between sending and receiving stations is broken in the middle of a message transmission process, the receiving station will wait for a certain period (which can be a fixed period or calculated based on the number of earlier errors and retransmissions for example). If the link is not re-established prior to expiry of this period, the receiving station prompts the user with an error and exits from receiving mode.

[0137] 10. After receiving all packets of a message (determined in accordance with the value of header byte number 7 in the packet header), the whole message is reconstructed (or this may be done packet by packet as they are received—208), the header and error checking segments being stripped from each packet, and then the message is decrypted (209) and stored in the inbox category of the communication application. The user is informed of the newly received message by a pop-up dialog and/or an alarm (210).

[0138] As with the transmit protocol, if there are more than three re-tries to receive a packet, the process is aborted (211).

[0139] In addition to the transmission and reception protocols set out above, the software installed on the PDA implements protocols for number of other operational modes, namely:

[0140] A ‘Monitor Mode’ option, which when activated at a it receiving station, allows a user of that station to monitor all the messages with one or more particular encryption codes irrespective of whether they are specifically addressed to the receiving station;

[0141] A ‘Broadcast Mode’ option, which when enabled at a sending station can broadcast a message to all other stations;

[0142] An ‘Automatic Position Report Mode’ in which a sending station automatically sends, at intervals specified by the user, an encrypted position report including current position (in Lat/Long or UTM), speed and direction;

[0143] A ‘Position Report Request Mode’, enabling a station to poll an automatic position report from another given station;

[0144] A ‘Smart Repeater Mode’, which when enabled at a receiving/sending station, controls the station to automatically monitor and receive communications between other specified receiving and sending stations and to transmit one or more copies of any messages that are not received by the other specified receiving station.

[0145] A further description of the ‘Monitor Mode’ is not required here, its operation having already been described in the context of the message reception Protocol described above. Protocols for the other modes implemented in the software installed on the PDA are set out below.

[0146] The Protocol for broadcasting messages is illustrated n FIG. 5 and is as follows:

[0147] 1. When the Broadcast Mode is enabled at a sending station, the receiver ID byte of the header segment of each packet is set to a predefined value (ID ‘255’ for example).

[0148] 2. The ‘broadcast’ messages are sent as packets in the same way as normal messages (i.e. encrypted (301) and divided into packets (302)—as described above), but without acknowledgement checking, i.e. the sending station does not expect or wait for a response from any other station before sending subsequent packets of the message. Instead, to increase the chances of correct reception by all receiving stations, each packet of a message is transmitted more than once (e.g. twice) by the sending station in Broadcast Mode (303).

[0149] 3. At receiving stations, each station receives the message with broadcasting ID ‘255’. It recognises this ID as a broadcast message and initiates the reception process as set out above, but without sending any reply to the sending station. Once the receiving station correctly receives a packet, it ignores any repetition of the same packet. However, if the first transmission of the packet is not received correctly, the receiving station has one or more chance to receive the broadcast packet.

[0150] The Protocol for the Automatic (GPS) Position Report Mode is illustrated in FIG. 6 and is as follows:

[0151] 1. If this mode is selected by a user, e.g. through a preferences dialog, a timer is set by the system and at time intervals set by the user, automatic position reporting is activated.

[0152] 2. At the pre-set time intervals, the PDA sends a command (P=2) through the serial port, which is received by the micro-controller inside the hardware (modem/controller) (401).

[0153] 3. When this command is received by the micro-controller, it switches the serial port connection of the PDA from the radio modem to the GPS (402).

[0154] 4. The PDA starts receiving GPS output (standard NMEA protocol), and looks for a complete output string of type ‘GPRMC’ or ‘GPGGA’ (403).

[0155] 5. If a valid string of the specified type is not received from the GPS within a timeout period (e.g. 3 seconds), the user is informed by a beep and the PDA sends a command (P=0) to the micro-controller which results in the reconnection of PDA to the radio modem (404).

[0156] 6. If a valid string of specified type is received from the GPS, it is parsed and transformed into the desired position report format and encrypted automatically (405) and the PDA sends the command (P=0) to the micro-controller through the serial port to switch back to the radio modem (406). The encrypted is position report is then sent via the radio link (407).

[0157] 7. There is no feedback from the receiving stations, and all stations will receive the position reports if they are within the range of the reporting station.

[0158] The Protocol for Position Report Poll Mode is as follows and is also illustrated in FIG. 6:

[0159] 1. A requesting (polling) station user selects this mode in the application running on the PDA and specifies the ID of the station whose position is required.

[0160] 2. The PDA sends a short message to the specified station, this message being identified to receiving stations as a Polling message by a special, predefined header.

[0161] 3. Once the message is received by the specified (polled) station (401), that station automatically starts a process of sending a position report adopting the same protocol that is followed intermittently for in the Automatic Position Report Mode (see above).

[0162] By adopting this option for the provision of position reports in response to a specific request from a polling station, location information, as well as speed and direction of travel of a mobile station can be automatically acquired without the need for continuous position transmission by all stations. This minimises that amount if airtime that is taken up by these position reports.

[0163] The Protocol for the Smart Repeater Mode is illustrated in FIG. 7 and is as follows:

[0164] 1. If a sending/receiving station is to serve as a repeater station, the smart repeater option of the PDA is set to on (if desired, the smart repeater mode can be enabled only in respect of a specific list of sending stations for which the repeater station should relay messages—this list can be set by the user for example) (501).

[0165] 2. When a message is sent from a sending station to a receiving station, the repeater station monitors the contact and temporarily stores each packet as it is sent (502). If the connection between the sending and the receiving stations is established, the repeater station does not take any actions (503).

[0166] 3. If at any point in the transmission process the receiving station does not receive a packet, the repeater station replies to the sending station on behalf of the receiving station (504) and may either forward its stored copy of the missed packet after a pause of predetermined length (e.g. 3 seconds), or alternatively append the packet to any previously stored packets (505). In the latter case, once the complete message is received by the repeater station (506) then so long as the receiving station has not itself safely received the message also, it can decrypt the message (507) and then itself act as a sending station to send the message to the intended recipient (508) and then respond accordingly to the sending station (509).

[0167] 4. The smart repeater mode includes a facility which allows the repeater station to be switched for Manual Repeating of Messages. In this mode, messages are received, but retransmission occurs only by the command of the operator of the repeating station.

[0168] Using receiving/sending stations as ‘Smart Repeaters’ in the above manner allows means that the users of the communication system do not need to consider whether a particular message should be sent by making a direct connection with the intended recipient or by using another station as a repeater for the message. Instead, the user simply sends the message, if the receiving station is in range, it responds directly, but if it is not in range, then so long as there is another station in range that has its Smart Repeater Mode activated, it will step in and act as a repeater station, forwarding the message.

[0169] In systems being employed as base stations, for example, where a PC is also connected to the PDA via the modem/controller, the PC can itself initiate communication with the PDA. For instance, the PC can send an interrupt to the PIC controller 20, causing it to set the multiplexer 18 to connect the PDA directly to the PC, allowing these two computers to talk to one another. The PC may for example send text messages to the PDA for subsequent encryption and re-transmission or alternatively receive decrypted messages from the PDA. Once the transfer of data between the PDA and PC is complete, the controller 20 instructs the multiplexer to reconnect the PDA wit the modulator/demodulator 10.

[0170] It will be appreciated that although reference is made above to receiving stations, sending stations, polling stations and repeater stations, the communication system of the preferred embodiment of the invention can serve as any and all of these forms of station.

[0171] Thus, in view of the above, it can be seen that the invention, in its preferred embodiments is able to provide a wireless communication system that can offer:

[0172] Digital message transmission over VHF/UHF radios with automatic encryption and decryption at both ends.

[0173] Automatic encrypted transmission of mobile stations' geographic location in terms of geographic co-ordinates.

[0174] Portability by an individual.

[0175] Simplicity and ease of use.

[0176] Minimum power requirements.

[0177] High Reliability RF Messaging with Message Delivery Status Report

[0178] Long distance communication with fully automatic relaying (repeating).

[0179] Graphical User Interface for incoming and outgoing message management for RF communications.

[0180] It will be appreciated that various modifications can be made to the exemplary embodiment described above without departing from the present invention. For instance, the modulator used need not necessarily be of the MSK type and can, for example, be an FSK modem instead. Likewise, the switching function need not necessarily be achieved using micro-controller controlled multiplexer—many equivalent electronic circuits will be available to the skilled person. 

We claim:
 1. A system for wireless transmission of data, including position data, the system comprising: (i) a hand held digital computer; (ii) a position-locating device providing position information to the digital computer; (iii) a VHF and/or UHF radio frequency transmitter; and (iv) a radio modem having an input for digital data from the hand held digital computer, a modulator for converting digital data from the computer into a modulated analogue RF signal, and an output connected to the transmitter for transmission of said modulated signal.
 2. A system according to claim 1, wherein said digital computer comprises means for controlling operation of said radio modem.
 3. A system according to claim 2, wherein said control means comprises software installed on said digital computer.
 4. A system according to claim 1, comprising radio receiver connected to the radio modem, the modem including a demodulator for demodulating a received RF signal and converting it to digital data for input to the digital computer.
 5. A system according to claim 4, wherein a radio transceiver serves as both the radio receiver and transmitter.
 6. A system according to claim 4, wherein said digital computer is of a type having a ‘sleep mode’, said radio modem including wake-up means for waking the computer from said ‘sleep mode’ on receipt of an RF signal by said radio receiver.
 7. A system according to claim 6, wherein said wake-up means transmits a wake-up signal to the digital computer prior to transmission of a demodulated signal to the computer.
 8. A system according to claim 1, wherein the hand held digital computer is a ‘palmtop’ or other ‘Personal Digital Assistant’
 9. A system according to claim 8, wherein said ‘palmtop’ or ‘Personal Digital Assistant’ operates the PalmOS platform and wherein transmission of data is initiated by activating a ‘Request to Send’ feature installed on the PalmOS platform, which causes a Push-to-Talk signal to be sent to the radio transmitter.
 10. A system according to claim 8, wherein digital computer is a ‘palmtop’ or ‘Personal Digital Assistant’ which operates the PalmOS platform and wherein the wake-up signal is sent using the Palm Hot-sync feature.
 11. A system according to claim 1, wherein the position-locating device is a GPS device.
 12. A system according to claim 1, wherein the position location device is connected to the digital computer through the radio modem.
 13. A system according to claim 1, wherein said digital computer has an ‘always on mode’ and a ‘sleep mode’, the computer being controllable to operate in a selected one of these modes.
 14. A system according to claim 1, wherein the digital computer is powered by a rechargeable battery and the radio modem comprises charging means for charging said battery simultaneously with data exchange between the computer and the modem.
 15. A system according to claim 1, further comprising a second digital computer which can be interfaced to the hand held digital computer through the radio modem to receive data from and transmit data to the hand held computer.
 16. A system according to claim 15, wherein said second digital computer is a Laptop PC or a Desktop PC or a Network Workstation.
 17. A system according to claim 15, wherein said second digital computer is connected to a computer or telecommunications network.
 18. A modem to provide an interface between a hand held digital computer, a radio frequency transmitter and/or receiver and a position locating device, the modem comprising: (i) an input/output port for connection to a communication port of the hand held digital computer; (ii) a modulator and/or demodulator for converting digital data to a modulated radio frequency signal and/or for converting a modulated radio frequency signal to digital data; (iii) an input for data from the position-locating device; (iv) a switch for selectively connecting (a) the modulator and/or demodulator to said input/output port, or (b) the position locating device input to said input/output port; and (v) a controller for controlling the operation of the switch.
 19. A modem according to claim 18, wherein said position locating device is an internal component of the modem.
 20. A modem according to claim 18, wherein said digital computer is of a type having a ‘sleep mode’, said radio modem comprising wake-up means for waking the computer from said ‘sleep mode’ on receipt of an RF signal by said radio receiver.
 21. A modem according to claim 20, wherein said wake-up means transmits a wake-up signal to the digital computer prior to transmission of a demodulated signal to the computer.
 22. A modem according to claim 21, wherein said hand held digital computer is a ‘palmtop’ or other ‘Personal Digital Assistant’ operating the PalmOS platform and wherein the wake-up signal is sent using the Palm Hot-sync feature.
 23. A modem according to claim 21, wherein said demodulator has a ‘carrier detect’ feature responsive to an RF carrier signal received by the radio receiver and the wake-up signal is initiated by said ‘carrier detect’ feature when an RF carrier signal is received.
 24. A modem according to claim 21, wherein said controller has a ‘packet recognition’ feature responsive to demodulated data arriving at the switch from the demodulator and the wake-up signal is initiated by said ‘packet recognition’, feature on arrival of demodulated data.
 25. A modem according to claims 18, comprising a second input/output port for connection to a second digital computer, said switch being operable by the controller to connect said second input/output port to said port for the hand held digital computer.
 26. A method for the wireless transmission of a message from a sending station to a receiving station, the method comprising: (i) at the sending station, dividing the message into a number of discrete data packets; (ii) sending a data packet by radio transmission from the sending station to the receiving station; (iii) waiting for acknowledgement from the receiving station that the packet has been received; (iv) once receipt of the packet has been acknowledged, sending a subsequent packet to the receiving station; and (v) repeating steps (iii) and (iv) until all of the data packets have been sent.
 27. A method according to claim 26, wherein each data packet includes, in addition to the message data, a header, comprising data giving information about one or more of: an address of the receiving station; an address of the sending station; the length of the message data; and the number of data packets into which the message has been divided.
 28. A method according to claim 26, wherein said header includes information defining a message type.
 29. A method according to claim 26, wherein each packet includes check data, which can be used to test the integrity of the packet when it is received at the receiving station.
 30. A method according to claim 26 wherein said message is encrypted prior to its division into discrete packages.
 31. A method according to claims 27, wherein the size of the message data part of each packet is set by the sending station, the length of this segment of the packet being given in the packet header.
 32. A method according to claim 26, wherein if an acknowledgement of safe receipt of any packet is not returned by the receiving station, the sending station re-transmits the packet automatically.
 33. A method for receiving at a receiving station a message transmitted as a series of radio data packets from a sending station, each packet comprising a message data segment and a header, the header containing information including the address of the intended recipient of the message and the length of the message data segment, the method comprising: (i) detecting receipt at the receiving station by a radio receiver of the first packet of a new message; (ii) determining from the packet header whether the receiving station is the intended recipient of the message, and if it is; (iii) determining from the packet header the length of the message data segment of the packet; (iv) extracting and storing the message data from the packet; and (v) transmitting an acknowledgement of receipt of the package to the sending station.
 34. A method according to claim 33, wherein the packet header also includes an indication of how many subsequent packets of the complete message there are yet to be received.
 35. A method according to claim 33, wherein each packet includes check data which can be used by the receiving station to test the integrity of the packet, comprising the further steps of checking the integrity of the received package and if the data packet is not correctly received, transmitting a ‘not acknowledged’ message to the sending station.
 36. A method for the wireless broadcast of a message from a sending station, the method comprising: (i) at the sending station, dividing the message into a number of discrete data packets; (ii) labelling each packet as a broadcast packet; (iii) transmitting a first data packet by radio transmission from the sending station; (iv) transmitting at least one copy of the first data packet after a predetermined delay following transmission of the first data packet; and (v) transmitting subsequent data packets, the transmission of each subsequent data packet being followed by the transmission of a copy of the packet prior to transmission of the next subsequent data packet.
 37. A wireless communication system according to claim 1, wherein said radio modem is a modem according to claim
 18. 38. A wireless communication system according to claim 1, comprising control means to enable the system to operate in accordance with the method of claim
 26. 39. A system according to claim 38, wherein said control means comprises software installed on the hand held digital computer.
 40. A system according to claim 38, wherein said control means is operable to automatically transmit, at predetermined intervals of time, a position report containing information about the location of the system, obtained from the position device.
 41. A system according to claims 38, wherein said control means is operable cause the system to request the position of another station.
 42. A system according to claim 38, wherein said control means is operable cause the system to act as a repeater station.
 43. A system according to claim 42, wherein said control means controls the system to monitor communications between a sending station and a receiving station and to act as a repeater station when there is a communication failure between the stations. 